const subarraySum = (nums, k) => {
    const map = { 0: 1 };
    let prefixSum = 0;
    let count = 0;
  
    for (let i = 0; i < nums.length; i++) {
      prefixSum += nums[i];
  
      if (map[prefixSum - k]) {
        count += map[prefixSum - k];
      }
  
      if (map[prefixSum]) {
        map[prefixSum]++;
      } else {
        map[prefixSum] = 1;
      }
    }
    return count;
  };
  
//   作者：xiao_ben_zhu
//   链接：https://leetcode.cn/problems/subarray-sum-equals-k/solution/dai-ni-da-tong-qian-zhui-he-cong-zui-ben-fang-fa-y/
//   来源：力扣（LeetCode）
//   著作权归作者所有。商业转载请联系作者获得授权，非商业转载请注明出处。